import pandas as pd
import math
# 读取整个表单
file_path = 'd://人员信息.xlsx'  # 替换为你的文件路径
df = pd.read_excel(file_path,header = None)

# 提取特定单元格数据（假设姓名在B2单元格）
name = df.iloc[0, 1]  # 行号、列号从0开始计数
print(name)
# 提取多个字段组成DataFrame
data = {
    '姓名': df.iloc[0, 1],
    '年龄': df.iloc[0, 4],
    '工作': df.iloc[1, 1],
    '喜好': df.iloc[1, 4],
}
result_df = pd.DataFrame([data])  # 转为单行DataFrame

name = result_df['姓名'].values[0]  # 获取第一个(唯一)姓名
print(name)

# 读取Excel文件
# df = pd.read_excel('人员信息.xlsx', header=None)  # 不自动识别表头

# 定义要读取的区域范围（示例：B2到D5）
start_row, end_row = 0, 1    # 行索引（从0开始）
start_col, end_col = 0, 4    # 列索引（从0开始）

# 提取区域数据到列表
cell_values = []
for i in range(start_row, end_row + 1):
    row_values = []
    for j in range(start_col, end_col + 1):
        row_values.append(df.iloc[i, j])
    # 过滤掉列表中的nan数据
    filtered = [x for x in row_values if not (isinstance(x, float) and math.isnan(x))]
    cell_values.append(filtered)

print("提取的区域数据：")
print(cell_values)

# 如果要展平为一维列表
flat_list = [item for sublist in cell_values for item in sublist]
print("\n展平后的列表：")
print(flat_list)
